﻿$(function() {
    $("#tree").dynatree({
        onActivate: function (node) {
            // A DynaTreeNode object is passed to the activation handler
            // Note: we also get this event, if persistence is on, and the page is reloaded.
            //alert("You activated " + node.data.url);
        },
        onCustomRender: function(node) {
            return '<span class="dynatree-title" data-id="' + node.data.key + '"><span class="titleSpan">' + node.data.title + '</span><input type="text" value="' + node.data.title + '" style="display:none"/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i class="icon-edit"></i><i class="icon-remove" style="display:none"></i>&nbsp;&nbsp;<i class="icon-ok" style="display:none"></i></span>';
        },
        generateIds: true,
        //persist: true,
        //children: [ // Pass an array of nodes.
        //    { title: "Item 1" },
        //    {
        //        title: "Folder 2", isFolder: true,
        //        children: [
        //            { title: "Sub-item 2.1" },
        //            { title: "Sub-item 2.2" }
        //        ]
        //    },
        //    { title: "Item 3" }
        //]
        initAjax: {
            type: "POST", // This was needed
            url: "/SoruKategori/KategoriAgaciGetir"
        }
    });
    $('body').on('click', '.icon-edit', function () {
        $(this).css('display', 'none');
        $(this).parent().find('.icon-ok').css('display', '');
        $(this).parent().find('.icon-remove').css('display', '');
        
        
        $(this).parent().find('.titleSpan').css('display', 'none');//display= görünürlük.
        $(this).parent().find('input').css('display', 'inline');//dogrudan inputa ulaştık,class aramadık.
        
    });
    $('body').on('click', '.icon-remove', function() {
        $(this).parent().find('.icon-ok').css('display', 'none');
        $(this).parent().find('.icon-edit').css('display', '');
        $(this).css('display', 'none');
        // çarpı tusuna bastıktan sonra eski haline getiriyoruz.
        $(this).parent().find('input').css('display', 'none');
        $(this).parent().find('.titleSpan').css('display', 'inline');
        $(this).parent().find('input').val($(this).parent().find('.titleSpan').text()); //titlespanın textini inputun valuesu olarak atadık.


    });
    $('body').on('click', '.icon-ok', function () {
        var suankielement = $(this);
        var id = suankielement.parent().attr('data-id');
        var deger = $(this).parent().find('input').val();
        
        if ($.trim($(this).parent().find('input').val()) != "") {
            $(this).parent().find('input').css('border-color', '');
            if( confirm('Değiştirmek İstediğinize Emin Misiniz?')) {
                // alert('1');
                $.ajax({
                    type: 'POST',
                    url: '/SoruKategori/KategoriDegistir',
                    data: JSON.stringify({ kategoriId: id, yeniKategoriAdi:deger }),
                    dataType: 'json',
                    contentType: "application/json; charset=utf-8",
                    beforeSend: function () {
                        $('#imgLoading').show();
                    },
                    complete: function () {
                        $('#imgLoading').hide();
                    },
                    success: function (data) {
                        if (data =='success') {
                            suankielement.css('display', 'none');
                            suankielement.parent().find('.icon-remove').css('display', 'none');
                            suankielement.parent().find('.icon-edit').css('display', '');//edit=kalem şeysi.
                            suankielement.parent().find('input').css('display', 'none');
                            suankielement.parent().find('.titleSpan').text(deger);//degişkenleri tek tırnak içine yazmıyorsun cınıms.
                            suankielement.parent().find('.titleSpan').css('display', 'inline');
                    
                        }
                      
                    }
                });


            }
            
            
            
            
        }
        else {
            $(this).parent().find('input').css('border-color', 'red');

            return false;//fonksiyonun işleyişini bitirir.
        }
        
    });
    $('body').on('keyup', '.dynatree-title input[type=text]', function(e) {
        if (e.keyCode == 8) {
            $(this).val($(this).val().slice(0, -1)); //Basılan texbox ın valuesu, aynı textboxın valuesunun son karakteri silinmiş hali olsun. Örn : Merve -> Merv
        }
    });
    
});